//
//  HttpClient.h
//  tingCheChang
//
//  Created by hff on 15/8/3.
//  Copyright (c) 2015年 threeTi. All rights reserved.
//

#import "TTIClientManager.h"
#import "AppMacro.h"


@interface DNPersonHttpsClient : TTIClientManager

/**
 *  单例
 *
 *  @return 单例
 */
+(DNPersonHttpsClient *)shareInstance;



/**
 *  1 用户登录
 *
 *  @param cellNumber    用户名
 *  @param password      密码
 *  @param success       返回的参数内:支付密码为1表示有支付密码，为0表示没有支付密码
 *  @param failure       失败
 */
- (void)requestUserLoginWithCellNumber:(NSString *)cellNumber
                              password:(NSString *)password
                               success:(TTIClientManagerBlock)success
                               failuer:(TTIClientManagerBlock)failure;



/**
 *  2 用户注册
 *
 *  @param cellNumber    用户名
 *  @param code          验证码
 *  @param password      密码
 *  @param success       成功
 *  @param failure       失败
 */
- (void)requestUserRegistWithCellNumber:(NSString *)cellNumber
                                   code:(NSString *)code
                               password:(NSString *)password
                                success:(TTIClientManagerBlock)success
                                failuer:(TTIClientManagerBlock)failure;


/**
 *  3 获取验证码
 *
 *  @param cellNumber    手机号
 *  @param success       成功
 *  @param failure       失败
 */
//- (void)requestVerifyPhoneCodeWithCellNumber:(NSString *)cellNumber
//                                success:(TTIClientManagerBlock)success
//                                failuer:(TTIClientManagerBlock)failure;




/**
 *  4 完善个人信息
 *
 *  @param cellNumber 登录名
 *  @param headPhoto  头像
 *  @param nickName   昵称
 *  @param gender     性别
 *  @param country    国家
 *  @param success    成功
 *  @param failure    失败
 */
- (void)requestFinishUserInfoWithCellNumber:(NSString *)cellNumber
                                  headPhoto:(UIImage *)headPhoto
                                   nickName:(NSString *)nickName
                                     gender:(NSString *)gender
                                    country:(NSString *)country
                                    success:(TTIClientManagerBlock)success
                                    failuer:(TTIClientManagerBlock)failure;


/**
 *  5 忘记密码-验证验证码
 *
 *  @param cellNumber 手机号
 *  @param code       验证码
 *  @param success    成功
 *  @param failure    失败
 */
//- (void)requestVerifyCodeWithCellNumber:(NSString *)cellNumber
//                                   verityCode:(NSString *)verityCode
//                                    success:(TTIClientManagerBlock)success
//                                    failuer:(TTIClientManagerBlock)failure;



/**
 *  6 忘记密码-重置密码
 *
 *  @param cellNumber 手机号
 *  @param code       验证码
 *  @param newPwd     新密码
 *  @param success    成功
 *  @param failure    失败
 */
- (void)requestResetPasswordWithCellNumber:(NSString *)cellNumber
                                      code:(NSString *)code
                                    newPwd:(NSString *)newPwd
                                   success:(TTIClientManagerBlock)success
                                   failuer:(TTIClientManagerBlock)failure;


/**
 *  7 国家列表
 *
 *  @param nextPage 页号
 *  @param pageSize 页长
 *  @param success  成功
 *  @param failure  失败
 */
- (void)requestCountryListWithNextPage:(NSString *)nextPage
                              pageSize:(NSString *)pageSize
                               success:(TTIClientManagerBlock)success
                               failuer:(TTIClientManagerBlock)failure;

/**
 *  8 意见反馈
 *
 *  @param memberId    发表者ID
 *  @param feedtype    反馈类型 1:产品问题;2:产品建议;3:APP建议
 *  @param content     反馈内容
 *  @param contactInfo 联系方式
 *  @param success     成功
 *  @param failure     失败
 */
- (void)requestAddFeedbackWithMemberId:(NSString *)memberId
                              feedtype:(NSString *)feedtype
                               content:(NSString *)content
                           contactInfo:(NSString *)contactInfo
                               success:(TTIClientManagerBlock)success
                               failuer:(TTIClientManagerBlock)failure;

/**
 *  9 关于-版本更新
 *
 *  @param userDevice 请求设备类型 1表示android,2表示ios
 *  @param appVersion 版本号
 *  @param success    成功
 *  @param failure    失败
 */
- (void)requestUpdateVersionWithUserDevice:(NSString *)userDevice
                                appVersion:(NSString *)appVersion
                                   success:(TTIClientManagerBlock)success
                                   failuer:(TTIClientManagerBlock)failure;


/**
 *  10 消息列表
 *
 *  @param nextPage 页号
 *  @param pageSize 页长
 *  @param success  成功
 *  @param failure  失败
 */
- (void)requestMessageListWithNextPage:(NSString *)nextPage
                              pageSize:(NSString *)pageSize
                               success:(TTIClientManagerBlock)success
                               failuer:(TTIClientManagerBlock)failure;

/**
 *  11 消息详情
 *
 *  @param modelId 编号
 *  @param success 成功
 *  @param failure 失败
 */
- (void)requestMessageDetialWithModelId:(NSString *)modelId
                                success:(TTIClientManagerBlock)success
                                failuer:(TTIClientManagerBlock)failure;

/**
 *  12 公告列表
 *
 *  @param nextPage 页码 默认0,从第0页开始
 *  @param pageSize 页长 pageSize,默认10
 *  @param status   数据状态,字段名:status,-1锁定,0无效,1正常,2发布,3删除,选填,默认正常数据状态1
 *  @param sortData 排序字段
 *  @param userId   用户编号
 *  @param success  成功
 *  @param failure  失败
 */
- (void)requestNoticeListWithNextPage:(NSString *)nextPage
                             pageSize:(NSString *)pageSize
                               status:(NSString *)status
                             sortData:(NSString *)sortData
                               userId:(NSString *)userId
                              success:(TTIClientManagerBlock)success
                              failuer:(TTIClientManagerBlock)failure;

/**
 *  13 公告详情
 *
 *  @param modelId 编号
 *  @param userId  用户编号
 *  @param success 成功
 *  @param failure 失败
 */
- (void)requestNoticeDetailWithId:(NSString *)modelId
                           userId:(NSString *)userId
                          success:(TTIClientManagerBlock)success
                          failure:(TTIClientManagerBlock)failure;
/**
 *  14 查询手机号是否注册过
 *
 *  @param cellNumber 手机号码
 *  @param success    成功
 *  @param failure    失败
 */
- (void)requestCheckCellNumberRegistedWithcellNumber:(NSString *)cellNumber
                                             success:(TTIClientManagerBlock)success
                                             failure:(TTIClientManagerBlock)failure;
/**
 *  15 添加飞行记录
 *
 *  @param name    飞行器名称
 *  @param flyDate 飞行时间
 *  @param userId  用户ID,新建表Id为空
 *  @param success 成功
 *  @param failure 失败
 */
- (void)requestSaveFlyRecordWithName:(NSString *)name
                             flyDate:(NSString *)flyDate
                              userId:(NSString *)userId
                             success:(TTIClientManagerBlock)success
                             failure:(TTIClientManagerBlock)failure;
/**
 *  16 查询飞行记录
 *
 *  @param nextPage   页号
 *  @param pageSize   页长
 *  @param jsonFilter {'search_EQ_field1':'value1'}
 *  @param success
 *  @param failure
 */
- (void)requestFindFlyRecordListNextPage:(NSString *)nextPage
                                pageSize:(NSString *)pageSize
                              jsonFilter:(NSString *)jsonFilter
                                 success:(TTIClientManagerBlock)success
                                 failure:(TTIClientManagerBlock)failure;
/**
 *  17 查询是否有新固件
 *
 *  @param type            请求固件类型: 1表示飞行器,2表示遥控器
 *  @param firmwareVersion 当前版本号
 *  @param success
 *  @param failure
 */
- (void)requestFindUpdateInfoWithType:(NSString *)type
                      firmwareVersion:(NSString *)firmwareVersion
                              success:(TTIClientManagerBlock)success
                              failure:(TTIClientManagerBlock)failure;
/**
 *  18 新增固件
 *
 *  @param name        名称
 *  @param instruction 更新说明
 *  @param location    文件路径
 *  @param userId      用户编号
 *  @param success
 *  @param failure
 */
- (void)requestSaveFirmWareWithName:(NSString *)name
                        instruction:(NSString *)instruction
                           location:(NSString *)location
                             userId:(NSString *)userId
                            success:(TTIClientManagerBlock)success
                            failure:(TTIClientManagerBlock)failure;
/**
 *  19 我的消息 小红点
 *
 *  @param userId  用户id
 *  @param success
 *  @param failure
 */
- (void)requestCheckNewMsgWithuserId:(NSString *)userId
                             success:(TTIClientManagerBlock)success
                             failure:(TTIClientManagerBlock)failure;
/**
 *  20 app下载
 *
 *  @param success
 *  @param failure
 */
- (void)requestDownloadNewAppsuccess:(TTIClientManagerBlock)success
                             failure:(TTIClientManagerBlock)failure;





@end
